#include "FS.h"
#include <LittleFS.h>/*
文件操作

*/
///显示当前文件系统存储状态
void showFSInfo() {
  // 获取一个文件系统信息结构。
  Serial.println(">>>>> 当前文件系统信息 开始 >>>>>");
  FSInfo fs;
  SPIFFS.info(fs);
  Serial.print(" 可用量 :");
  Serial.print(fs.totalBytes );
  Serial.print(" 已用 :");
  Serial.print(fs.usedBytes  );
  Serial.print(" 块大小 :");
  Serial.print(fs.blockSize );
  Serial.print(" 页大小 :");
  Serial.print(fs.pageSize );
  Serial.print(" 最大打开文件数 :");
  Serial.print(fs.maxOpenFiles );
  Serial.print(" 最大文件路径长度 :");
  Serial.print(fs.maxPathLength );
  Serial.println(">>>>>>>>文件列表>>>>>>>>>>");
  Dir dir = SPIFFS.openDir("/");
  while (dir.next()) {
    Serial.print(" >");
    Serial.print(dir.fileName());
    Serial.print("[");
    File f = dir.openFile("r");
    Serial.print(f.size());
    Serial.print("]");
  }
  Serial.println("");
  Serial.println(">>>>> 当前文件系统信息 结束 >>>>>");
}

//读取文件内容
String loadFile(String file_name) {
  File dataFile = SPIFFS.open(file_name, "r");
  String  ss;
  if (dataFile)
  { 
    Serial.print(file_name);
    Serial.print(" > 大小 > ");
    Serial.print(dataFile.size());
    ss =  dataFile.readString();
    Serial.println(" > 加载完成..");
  }
  else {
    Serial.println("加载");
    Serial.print(file_name);
    Serial.println("未找到");
  }
  dataFile.close();
 // showFSInfo();
  return ss;
}
//追加内容
void appendsave(String file_name, String val) {
  File dataFile = SPIFFS.open(file_name, "a+");
  dataFile.println(val);
  dataFile.close();
  showFSInfo();
}
// 覆盖内容
void writesave(String file_name, String val) {
  File dataFile = SPIFFS.open(file_name, "w+");
  dataFile.print(val);
  dataFile.close();
  showFSInfo();
}
